package org.xczy.core.config.interceptorConfig;

import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

import javax.annotation.Resource;

@Configuration
public class InterceptorConfig implements WebMvcConfigurer {

  @Resource
  private JwtValidateInterceptor jwtValidateInterceptor;

  @Override
  public void addInterceptors(InterceptorRegistry registry) {
    InterceptorRegistration registration = registry.addInterceptor(jwtValidateInterceptor);
    registration.addPathPatterns("/**")
        .excludePathPatterns(
            "/user/login",
            "/user/info",
            "/user/logout",
            "/error",
            "/swagger-ui/**",
            "/swagger-resources/**",
            "/v3/**"
        );
  }

}
